package cn.minsh.lims.eoms.modules.app.service;

import cn.minsh.lims.eoms.modules.app.controller.req.*;
import cn.minsh.lims.eoms.modules.app.controller.req.wx.WxMaintenanceListReq;
import cn.minsh.lims.eoms.modules.app.controller.res.MaintenanceOrderInfoRes;
import com.baomidou.mybatisplus.extension.service.IService;
import cn.minsh.lims.eoms.common.utils.PageUtils;
import cn.minsh.lims.eoms.modules.app.entity.MaintenanceOrderEntity;

/**
 * 保养工单
 *
 * @author lht
 * @email sunlightcs@gmail.com
 * @date 2021-04-30 00:17:00
 */
public interface MaintenanceOrderService extends IService<MaintenanceOrderEntity> {

    PageUtils queryPage(MaintenanceOrderListReq req,Long userId);

    void saveOrder(MaintenanceOrderReq req,Long userId);

    void updateOrderById(MaintenanceOrderReq req,Long userId);

    MaintenanceOrderInfoRes queryById(Long id,Long userId);

    void accept(AcceptOrderReq req,Long userId);

    void reject(RejectOrderReq req,Long userId);

    void updateAgent(ModifyAgentOrderReq req,Long userId);

    void uploadResult(MaintenanceResultReq req,Long userId);

    void closeOrder(MaintenanceOrderCloseReq req,Long userId);

    PageUtils queryWxPage(WxMaintenanceListReq req,Long userId);
}

